package com.zjinyin.forum.service;

import com.zjinyin.forum.model.Board;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: DELL
 * Date: 2023-08-10
 * Time: 11:40
 */

/**
 * 实现版块功能中的接口
 */
public interface IBoardService {

    /**
     * 查询指定数目的版块, 并按照升序排序
     * @param num 指定数目
     * @return 返回版块集合
     */
    List<Board> selectByNum(Integer num);

    /**
     * 根据 id 标号查找版块
     * @param id 指定 id 版块编号
     * @return 返回指定版块信息
     */
    Board selectById(Long id);

    /**
     * 给指定 id 编号得版块下的文章数目 + 1
     * @param id 版块 id
     */
    @Transactional
    void increaseOneArticleCountById(Long id);


    /**
     * 指定 id 板块下的文章数 - 1
     * @param id
     */
    @Transactional
    void deleteOneArticleCountById(Long id);
}
